#pragma once

#include "GLInterface.h"

class GLACRobot;
// Game Logic Implement
class GLWorld : public IGLWorld, public IGDKObjIDGen
{
public:
	GLWorld(void);
	~GLWorld(void);

	void InitWorldObjs();
	void UninitWorldObjs();
	int RunAFrame();

public: //IGLWorld
	virtual IGLObjBase* CreateObj(int nType,int nPositionX=0,int nPositionY=0,int nPositionZ=0){return 0;};
	virtual int DestoryObj(IGLObjBase* pOjb){return 0;};
	virtual int PutInsideWorld(IGLObjBase* pOjb){return 0;};

	// IGDKObjIDGen
	virtual int GetNextObjID();
protected:

	void InitLand();

	int m_lWorldTime;		// World Time
	int m_lObjCount;
 	GLPObjList m_lstWorldObjs;
	int m_nLandID;

	GLACRobot* m_pRobot;
};
